package com.ruoyi.web.sso.service;

import java.util.List;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.web.sso.domain.Group;
import com.ruoyi.web.sso.domain.vo.AddGroup;

/**
 * 集团信息Service接口
 * 
 * @author ruoyi
 * @date 2021-10-28
 */
public interface IGroupService 
{
    /**
     * 查询集团信息
     * 
     * @param id 集团信息主键
     * @return 集团信息
     */
    public Group selectGroupById(String id);

    /**
     * 查询集团信息列表
     * 
     * @param group 集团信息
     * @return 集团信息集合
     */
    public List<Group> selectGroupList(Group group);

    /**
     * 新增集团信息
     * 
     * @param group 集团信息
     * @return 结果
     */
    public int insertGroup(Group group);

    /**
     * 修改集团信息
     * 
     * @param group 集团信息
     * @return 结果
     */
    public AjaxResult updateGroup(Group group);

    /**
     * 批量删除集团信息
     * 
     * @param ids 需要删除的集团信息主键集合
     * @return 结果
     */
    public int deleteGroupByIds(String ids);

    /**
     * 删除集团信息信息
     * 
     * @param id 集团信息主键
     * @return 结果
     */
    public int deleteGroupById(String id);

    /**
     * 添加
     * @return
     */
    AjaxResult add(Group group);

    /**
     * 批量授权集团管理
     * @param groupId
     * @param staffIds
     */
    int  insertAuthUsers(String groupId,  String[] staffIds);

    /**
     * 批量取消授权
     * @param groupId
     * @param userIds
     * @return
     */
    int  cancelAll(String groupId,  String userIds);


    public List<Group> selectStaffIdByGroupList(String staffId);
}
